An organization typically stores a considerable amount of enterprise data whereby data security/privacy during data storage and communication is a serious concern. Cloud computing environments provide additional challenges, such as when data is migrated to a cloud database management system (DBMS) from an on-premises computing system. Some challenges relate to database encryption, where sensitive columns are encrypted before being stored in a network resource. Conventional encryption schemes also make it difficult to perform computations without at least temporarily decrypting the data in an untrusted environment. These challenges make it difficult to provide a secure database-as-a-service paradigm in the cloud computing environment.
Often, database management systems use insecure software components to run data processing tasks on behalf of a client application. These systems sometimes rely upon resource-limited devices for security, but these devices become overloaded with query processing without significantly more computational and storage capacities. In general, this arrangement leads to an inefficient utilization of secure computational power in the devices and bandwidth on the network between the hardware devices and clients. This limits the achievable performance for most applications, including high-throughput applications running data processing tasks in the cloud computing environment.